Video frames are typically encoded in an interlaced format comprising a first video field (e.g., a top video field) and a second video field (e.g., a bottom field), each video field having alternating lines of the video frame and each field being temporally separated. Video images are typically encoded and transmitted to a receiver in such an interlaced format as a compromise between bandwidth and video image resolution. Since interlaced video frames are displayed using only half the lines of a full video frame, less system bandwidth is required to process and display these video frames. However, since the human eye typically cannot resolve a single video field, but rather, blends the first field and the second field, the perceived image has the vertical resolution of both fields combined.
Some types of receivers, including computers, televisions, mobile phones, computing tablets, etc., may require the use of de-interlaced video frames instead of interlaced video frames. For such receivers, the video frames encoded in an interlaced format must be de-interlaced prior to display. Typically, any missing pixels from the video frame are interpolated using the pixels of the first video field and the second video field.
There are several well-known methods to construct de-interlaced video frames. One such method is commonly referred to as the “bob” method in which a de-interlaced video frame is constructed from a single video field that is vertically interpolated. One drawback of this method is that objects within a scene that have diagonal or round edges are often incorrectly interpolated. This is due to the fact that vertical interpolation generally does not try to preserve edge information, but rather simply interpolates between a line above and a line below the missing line in the video frame. The resulting interpolated diagonal edges or round objects appear as stair steps, as opposed to smooth edges, and, thus, tend to decrease picture quality.
Several well-known techniques attempt to correct this drawback in the bob method by trying to preserve edge information. One such approach attempts to determine the edge of an object by correlating video data within a 3×3 pixel window (other versions of this approach may use other sized pixel windows, such as a 5×3 or 7×3 pixel window). Specifically, pixel data from the top line of the window is correlated with pixel data from the bottom line in order to determine a horizontal shift between the top and bottom lines. The horizontal shift is assumed to coincide with the edge.
Upon determining the edge of an object within the pixel window, pixels for the missing field may be constructed by interpolating along the determined edge. This approach, however, is relatively sensitive to noisy video data that has relatively greater amounts of intensity transitions due to either picture content or encoding errors. A video field with noisy data may produce false edges that, in turn, causes erroneous interpolation of pixels to be produced. Furthermore, this approach often fails to find edges when there are no obvious correlations among the pixels within the pixel window. Therefore, it would be desirable to provide new systems and methods for edge detection in a video field that have greater accuracy.